package com.ruoyi.business.domain;

import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * 商家订单对象 hcx_merchant_order
 *
 * @author wsdz
 * @date 2022-08-17
 */
@Data
@NoArgsConstructor
@Accessors(chain = true)
@TableName("hcx_merchant_order")
public class HcxMerchantOrder implements Serializable {

    private static final long serialVersionUID = 1L;


    /**
     * 主键id
     */
    @TableId(value = "id")
    private Long id;

    private Long userId;

    /**
     * 真实姓名
     */
    private String realName;

    /**
     * 商家id
     */
    private Long merchantId;

    /**
     * 商家名称
     */
    private String merchantName;

    /**
     * 商品id
     */
    private Long productId;

    /**
     * 商品名称
     */
    private String productName;

    /**
     * 商品照片
     */
    private String picUrl;

    /**
     * 商品摘要
     */
    private String summary;

    /**
     * 商品价格
     */
    private BigDecimal proPrice;

    /**
     * 购买商品数量
     */
    private Long proNum;

    /**
     * 应付金额
     */
    private BigDecimal shouldPrice;

    /**
     * 实付金额
     */
    private BigDecimal actualPrice;

    /**
     * 订单编号
     */
    private String orderNum;

    /**
     * 订单使用的优惠券(hcx_user_coupon表主键id 没有使用优惠券则为null)
     */
    private Long userCouponId;

    /**
     * 使用的优惠券面额(默认只能选一张并且是额度最高的那张)
     */
    private BigDecimal denomination;

    /**
     * 满足多少元可用
     */
    private BigDecimal conditionPrice;

    /**
     * 优惠券使用说明
     */
    private String useIntroduce;

    /**
     * 订单状态(0 待付款   1待使用(已支付)  2 待评价(已使用)  3 已完成    4 取消订单)
     */
    private String status;

    /**
     * 订单取消原因
     */
    private String calcelReason;

    /**
     * 洗车次数
     */
    private Integer washTimes;

    /**
     * 剩余洗车次数
     */
    private Integer surplusTimes;

    /**
     * 0 单次   1洗车卡
     */
    private String orderType;

    /**
     * 支付方式(0 微信支付  1 支付包支付 2 银联支付 3余额支付)
     */
    private String payType;

    /**
     * 7位随机数字
     */
    private String hexiaoCode;



    /**
     * 删除标志（0代表存在 2代表删除）
     */
    private String delFlag;

    /**
     * 创建者
     */
    @TableField(fill = FieldFill.INSERT)
    private String createBy;

    /**
     * 创建时间
     */
    @TableField(fill = FieldFill.INSERT)
    private Date createTime;

    /**
     * 更新者
     */
    @TableField(fill = FieldFill.INSERT_UPDATE)
    private String updateBy;

    /**
     * 更新时间
     */
    @TableField(fill = FieldFill.INSERT_UPDATE)
    private Date updateTime;

    /**
     * 备注
     */
    private String remark;

    /**
     * 二维码地址
     */
    private String qrCode;


    /**
     * 洗车卡id
     */
    private Long carId;
}
